/*
 * Copyright 2010-2012 Susanta Tewari. <freecode4susant@users.sourceforge.net>
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/*
* ComGLHoodIOptions.java
*
* Created on December 7, 2007, 10:12 PM
 */
package gui.genomemap.view.inputView.options;

import genomemap.data.RFLPImputation;

import gui.genomemap.inputModel.AnnealIModel;
import gui.genomemap.inputModel.ProgCurveIModel;

/**
 *
 * @author  stewari1
 */
public class ProgCurveIOptions extends javax.swing.JDialog {


    // Variables declaration - do not modify//GEN-BEGIN:variables

    /** Field description */
    private javax.swing.JPanel anneal_JPanel;

    /** Field description */
    private javax.swing.ButtonGroup applyImputation_JButtonGroup;

    /** Field description */
    private javax.swing.JTextField convEpsilon_JTextField;

    /** Field description */
    private javax.swing.JPanel gHood_JPanel;

    /** Field description */
    private javax.swing.JTextField g_convEpsilon_JTextField;

    /** Field description */
    private javax.swing.JTextField g_iteration_JTextField;

    /** Field description */
    private javax.swing.JPanel general_JPanel;

    /** Field description */
    private javax.swing.ButtonGroup imputationOptions_ButtonGroup;

    /** Field description */
    private javax.swing.JPanel imputationOptions_JPanel1;

    /** Field description */
    private javax.swing.JPanel imputationOptions_JPanel3;

    /** Field description */
    private javax.swing.JRadioButton imputePolicyProb_JRadioButton;

    /** Field description */
    private javax.swing.JRadioButton imputePolicyProb_JRadioButton2;

    /** Field description */
    private javax.swing.JTextField imputeProb_JTextField;

    /** Field description */
    private javax.swing.JTextField imputeProb_JTextField2;

    /** Field description */
    private javax.swing.JRadioButton imputing_JRadioButton;

    /** Field description */
    private javax.swing.JRadioButton imputing_JRadioButton2;

    /** Field description */
    private javax.swing.JTextField iteration_JTextField;

    /** Field description */
    private javax.swing.JPanel jHood_JPanel;

    /** Field description */
    private javax.swing.JLabel jLabel1;

    /** Field description */
    private javax.swing.JLabel jLabel10;

    /** Field description */
    private javax.swing.JLabel jLabel11;

    /** Field description */
    private javax.swing.JLabel jLabel12;

    /** Field description */
    private javax.swing.JLabel jLabel13;

    /** Field description */
    private javax.swing.JLabel jLabel14;

    /** Field description */
    private javax.swing.JLabel jLabel15;

    /** Field description */
    private javax.swing.JLabel jLabel2;

    /** Field description */
    private javax.swing.JLabel jLabel5;

    /** Field description */
    private javax.swing.JLabel jLabel6;

    /** Field description */
    private javax.swing.JLabel jLabel7;

    /** Field description */
    private javax.swing.JLabel jLabel8;

    /** Field description */
    private javax.swing.JLabel jLabel9;

    /** Field description */
    private javax.swing.JPanel jPanel1;

    /** Field description */
    private javax.swing.JPanel jPanel2;

    /** Field description */
    private javax.swing.JPanel jPanel4;

    /** Field description */
    private javax.swing.JPanel jPanel5;

    /** Field description */
    private javax.swing.JPanel jPanel6;

    /** Field description */
    private javax.swing.JPanel jPanel7;

    /** Field description */
    private javax.swing.JPanel jPanel8;

    /** Field description */
    private javax.swing.JTabbedPane jTabbedPane1;

    /** Field description */
    private javax.swing.JTabbedPane jTabbedPane2;

    /** Field description */
    private javax.swing.JTextField j_convEpsilon_JTextField;

    /** Field description */
    private javax.swing.JTextField j_iteration_JTextField;

    /** Field description */
    private javax.swing.JTextField lHood_percent_JTextField;

    /** Field description */
    private javax.swing.JTextField master_iter_JTextField;

    /** Field description */
    private javax.swing.JTextField max_beaten_JTextField;

    /** Field description */
    private javax.swing.JTextField max_unbeaten_JTextField;

    /** Field description */
    private javax.swing.JPanel missingVal_JPanel1;

    /** Field description */
    private javax.swing.JPanel missingVal_JPanel3;

    /** Field description */
    private javax.swing.JPanel pHood_JPanel;

    /** Field description */
    private javax.swing.JRadioButton removeSpore_JRadioButton;

    /** Field description */
    private javax.swing.JRadioButton removeSpore_JRadioButton2;

    /** Field description */
    private javax.swing.JTextField start_temp_JTextField;

    /** Field description */
    private javax.swing.JTextField temp_friction_JTextField;

    /** Field description */
    private javax.swing.JTextField temp_iter_JTextField;

    /** Creates new form ComGLHoodIOptions */
    public ProgCurveIOptions(java.awt.Frame parent, boolean modal) {

        super(parent, modal);

        initComponents();
    }

    /**
     * This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */


    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        applyImputation_JButtonGroup   = new javax.swing.ButtonGroup();
        imputationOptions_ButtonGroup  = new javax.swing.ButtonGroup();
        general_JPanel                 = new javax.swing.JPanel();
        jTabbedPane1                   = new javax.swing.JTabbedPane();
        jPanel1                        = new javax.swing.JPanel();
        jPanel4                        = new javax.swing.JPanel();
        jPanel6                        = new javax.swing.JPanel();
        jTabbedPane2                   = new javax.swing.JTabbedPane();
        anneal_JPanel                  = new javax.swing.JPanel();
        jPanel7                        = new javax.swing.JPanel();
        jLabel7                        = new javax.swing.JLabel();
        iteration_JTextField           = new javax.swing.JTextField();
        jLabel8                        = new javax.swing.JLabel();
        convEpsilon_JTextField         = new javax.swing.JTextField();
        jLabel9                        = new javax.swing.JLabel();
        jLabel10                       = new javax.swing.JLabel();
        jLabel11                       = new javax.swing.JLabel();
        jLabel12                       = new javax.swing.JLabel();
        jLabel13                       = new javax.swing.JLabel();
        jLabel14                       = new javax.swing.JLabel();
        jLabel15                       = new javax.swing.JLabel();
        master_iter_JTextField         = new javax.swing.JTextField();
        temp_iter_JTextField           = new javax.swing.JTextField();
        start_temp_JTextField          = new javax.swing.JTextField();
        temp_friction_JTextField       = new javax.swing.JTextField();
        max_unbeaten_JTextField        = new javax.swing.JTextField();
        max_beaten_JTextField          = new javax.swing.JTextField();
        lHood_percent_JTextField       = new javax.swing.JTextField();
        jPanel8                        = new javax.swing.JPanel();
        gHood_JPanel                   = new javax.swing.JPanel();
        jPanel2                        = new javax.swing.JPanel();
        jLabel1                        = new javax.swing.JLabel();
        g_iteration_JTextField         = new javax.swing.JTextField();
        jLabel2                        = new javax.swing.JLabel();
        g_convEpsilon_JTextField       = new javax.swing.JTextField();
        missingVal_JPanel1             = new javax.swing.JPanel();
        removeSpore_JRadioButton       = new javax.swing.JRadioButton();
        imputing_JRadioButton          = new javax.swing.JRadioButton();
        imputationOptions_JPanel1      = new javax.swing.JPanel();
        imputePolicyProb_JRadioButton  = new javax.swing.JRadioButton();
        imputeProb_JTextField          = new javax.swing.JTextField();
        pHood_JPanel                   = new javax.swing.JPanel();
        jHood_JPanel                   = new javax.swing.JPanel();
        jPanel5                        = new javax.swing.JPanel();
        jLabel5                        = new javax.swing.JLabel();
        j_iteration_JTextField         = new javax.swing.JTextField();
        jLabel6                        = new javax.swing.JLabel();
        j_convEpsilon_JTextField       = new javax.swing.JTextField();
        missingVal_JPanel3             = new javax.swing.JPanel();
        removeSpore_JRadioButton2      = new javax.swing.JRadioButton();
        imputing_JRadioButton2         = new javax.swing.JRadioButton();
        imputationOptions_JPanel3      = new javax.swing.JPanel();
        imputePolicyProb_JRadioButton2 = new javax.swing.JRadioButton();
        imputeProb_JTextField2         = new javax.swing.JTextField();

        setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
        setTitle("Advanced Input Settings");
        setAlwaysOnTop(true);
        setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
        setModal(true);
        addWindowListener(new java.awt.event.WindowAdapter() {

            public void windowClosing(java.awt.event.WindowEvent evt) {
                formWindowClosing(evt);
            }

        });
        jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder("Input Options"));

        javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);

        jPanel4.setLayout(jPanel4Layout);
        jPanel4Layout.setHorizontalGroup(
            jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(
                0, 521, Short.MAX_VALUE));
        jPanel4Layout.setVerticalGroup(
            jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(
                0, 245, Short.MAX_VALUE));
        jPanel6.setBorder(javax.swing.BorderFactory.createTitledBorder("Optional Input Options"));

        javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6);

        jPanel6.setLayout(jPanel6Layout);
        jPanel6Layout.setHorizontalGroup(
            jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(
                0, 521, Short.MAX_VALUE));
        jPanel6Layout.setVerticalGroup(
            jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(
                0, 245, Short.MAX_VALUE));

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);

        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                jPanel1Layout.createSequentialGroup().addContainerGap().addGroup(
                    jPanel1Layout.createParallelGroup(
                        javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                        jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE).addComponent(
                            jPanel6, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE,
                            javax.swing.GroupLayout.PREFERRED_SIZE)).addContainerGap(
                                12, Short.MAX_VALUE)));
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                jPanel1Layout.createSequentialGroup().addContainerGap().addComponent(
                    jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE,
                    javax.swing.GroupLayout.DEFAULT_SIZE,
                    javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(
                        javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(
                        jPanel6, javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE).addContainerGap(
                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
        jTabbedPane1.addTab("ProgCurve Options", jPanel1);
        jPanel7.setBorder(javax.swing.BorderFactory.createTitledBorder("LHood Settings"));
        jLabel7.setText("Iteration Limit");
        iteration_JTextField.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        iteration_JTextField.setText("150");
        jLabel8.setText("Convergence EPSILON");
        convEpsilon_JTextField.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        convEpsilon_JTextField.setText("0.0001");
        jLabel9.setText("MASTER_ITER_COUNT");
        jLabel10.setText("TEMP_ITER_COUNT");
        jLabel11.setText("START_TEMP");
        jLabel12.setText("TEMP_FRICTION");
        jLabel13.setText("MAX_UNBEATEN_COUNT");
        jLabel14.setText("MAX_BEATEN_COUNT");
        jLabel15.setText("LHood Percent Increase");
        master_iter_JTextField.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        master_iter_JTextField.setText("5000000");
        temp_iter_JTextField.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        temp_iter_JTextField.setText("10000");
        start_temp_JTextField.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        start_temp_JTextField.setText("50.0");
        temp_friction_JTextField.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        temp_friction_JTextField.setText("0.95");
        max_unbeaten_JTextField.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        max_unbeaten_JTextField.setText("200");
        max_beaten_JTextField.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        max_beaten_JTextField.setText("100");
        lHood_percent_JTextField.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        lHood_percent_JTextField.setText("0.01");

        javax.swing.GroupLayout jPanel7Layout = new javax.swing.GroupLayout(jPanel7);

        jPanel7.setLayout(jPanel7Layout);
        jPanel7Layout.setHorizontalGroup(
            jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                jPanel7Layout.createSequentialGroup().addGap(10, 10, 10).addGroup(
                    jPanel7Layout.createParallelGroup(
                        javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                        jLabel7).addComponent(jLabel8).addComponent(jLabel9).addComponent(
                        jLabel10).addComponent(jLabel11).addComponent(jLabel12).addComponent(
                        jLabel13).addComponent(jLabel14).addComponent(jLabel15)).addGroup(
                            jPanel7Layout.createParallelGroup(
                                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                                jPanel7Layout.createSequentialGroup().addGap(6, 6, 6).addGroup(
                                    jPanel7Layout.createParallelGroup(
                                        javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                                        temp_friction_JTextField,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE).addComponent(
                                            start_temp_JTextField,
                                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                        javax.swing.GroupLayout.PREFERRED_SIZE).addGroup(
                                                            jPanel7Layout.createParallelGroup(
                                                                javax.swing.GroupLayout.Alignment.TRAILING,
                                                                    false).addComponent(
                                                                        master_iter_JTextField,
                                                                            javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                                                                                temp_iter_JTextField,
                                                                                    javax.swing.GroupLayout.Alignment.LEADING,
                                                                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                                            39,
                                                                                            Short.MAX_VALUE)).addComponent(
                                                                                                convEpsilon_JTextField,
                                                                                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                                        49,
                                                                                                        javax.swing.GroupLayout.PREFERRED_SIZE).addComponent(
                                                                                                            iteration_JTextField,
                                                                                                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                                                    81,
                                                                                                                    javax.swing.GroupLayout.PREFERRED_SIZE))).addGroup(
                                                                                                                        jPanel7Layout.createSequentialGroup().addPreferredGap(
                                                                                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED).addGroup(
                                                                                                                                jPanel7Layout.createParallelGroup(
                                                                                                                                    javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                                                                                                                                        lHood_percent_JTextField,
                                                                                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                                                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                                                                                                    javax.swing.GroupLayout.PREFERRED_SIZE).addComponent(
                                                                                                                                                        max_beaten_JTextField,
                                                                                                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                                                                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                                                                                                                    javax.swing.GroupLayout.PREFERRED_SIZE).addComponent(
                                                                                                                                                                        max_unbeaten_JTextField,
                                                                                                                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                                                                                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                                                                                                                                    javax.swing.GroupLayout.PREFERRED_SIZE)))).addContainerGap(301, Short.MAX_VALUE)));
        jPanel7Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, convEpsilon_JTextField,
                               iteration_JTextField, lHood_percent_JTextField,
                               master_iter_JTextField, max_beaten_JTextField,
                               max_unbeaten_JTextField, start_temp_JTextField,
                               temp_friction_JTextField, temp_iter_JTextField);
        jPanel7Layout.setVerticalGroup(
            jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                jPanel7Layout.createSequentialGroup().addContainerGap().addGroup(
                    jPanel7Layout.createParallelGroup(
                        javax.swing.GroupLayout.Alignment.BASELINE).addComponent(
                        jLabel7).addComponent(
                        iteration_JTextField, javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(
                            javax.swing.LayoutStyle.ComponentPlacement.RELATED).addGroup(
                            jPanel7Layout.createParallelGroup(
                                javax.swing.GroupLayout.Alignment.BASELINE).addComponent(
                                jLabel8).addComponent(
                                convEpsilon_JTextField, javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(
                                    javax.swing.LayoutStyle.ComponentPlacement.RELATED).addGroup(
                                    jPanel7Layout.createParallelGroup(
                                        javax.swing.GroupLayout.Alignment.BASELINE).addComponent(
                                        jLabel9).addComponent(
                                        master_iter_JTextField,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(
                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED).addGroup(
                                                jPanel7Layout.createParallelGroup(
                                                    javax.swing.GroupLayout.Alignment.BASELINE).addComponent(
                                                        jLabel10).addComponent(
                                                            temp_iter_JTextField,
                                                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                        javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(
                                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED).addGroup(
                                                                                jPanel7Layout.createParallelGroup(
                                                                                    javax.swing.GroupLayout.Alignment.BASELINE).addComponent(
                                                                                        jLabel11).addComponent(
                                                                                            start_temp_JTextField,
                                                                                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                                                        javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(
                                                                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED).addGroup(
                                                                                                                jPanel7Layout.createParallelGroup(
                                                                                                                    javax.swing.GroupLayout.Alignment.BASELINE).addComponent(
                                                                                                                        jLabel12).addComponent(
                                                                                                                            temp_friction_JTextField,
                                                                                                                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                                                                                        javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(
                                                                                                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED).addGroup(
                                                                                                                                                jPanel7Layout.createParallelGroup(
                                                                                                                                                    javax.swing.GroupLayout.Alignment.BASELINE).addComponent(
                                                                                                                                                        jLabel13).addComponent(
                                                                                                                                                            max_unbeaten_JTextField,
                                                                                                                                                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                                                                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                                                                                                                        javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(
                                                                                                                                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED).addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(jLabel14).addComponent(max_beaten_JTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(jLabel15).addComponent(lHood_percent_JTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)).addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
        jPanel8.setBorder(javax.swing.BorderFactory.createTitledBorder("Optional Operations"));

        javax.swing.GroupLayout jPanel8Layout = new javax.swing.GroupLayout(jPanel8);

        jPanel8.setLayout(jPanel8Layout);
        jPanel8Layout.setHorizontalGroup(
            jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(
                0, 518, Short.MAX_VALUE));
        jPanel8Layout.setVerticalGroup(
            jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(
                0, 200, Short.MAX_VALUE));

        javax.swing.GroupLayout anneal_JPanelLayout = new javax.swing.GroupLayout(anneal_JPanel);

        anneal_JPanel.setLayout(anneal_JPanelLayout);
        anneal_JPanelLayout.setHorizontalGroup(
            anneal_JPanelLayout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                anneal_JPanelLayout.createSequentialGroup().addContainerGap().addGroup(
                    anneal_JPanelLayout.createParallelGroup(
                        javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                        jPanel8, javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE).addComponent(
                            jPanel7, javax.swing.GroupLayout.DEFAULT_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE,
                            Short.MAX_VALUE)).addContainerGap()));
        anneal_JPanelLayout.setVerticalGroup(
            anneal_JPanelLayout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                anneal_JPanelLayout.createSequentialGroup().addContainerGap().addComponent(
                    jPanel7, javax.swing.GroupLayout.PREFERRED_SIZE,
                    javax.swing.GroupLayout.DEFAULT_SIZE,
                    javax.swing.GroupLayout.PREFERRED_SIZE).addGap(17, 17, 17).addComponent(
                        jPanel8, javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE).addContainerGap(
                            12, Short.MAX_VALUE)));
        jTabbedPane2.addTab("Anneal Settings", anneal_JPanel);
        jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder("LHood Settings"));
        jLabel1.setText("Iteration Limit");
        g_iteration_JTextField.setText("150");
        jLabel2.setText("Convergence EPSILON");
        g_convEpsilon_JTextField.setText("0.0001");
        missingVal_JPanel1.setBorder(
            javax.swing.BorderFactory.createTitledBorder("Missing Value Options"));
        removeSpore_JRadioButton.setText("Remove Spores with Missing Values");
        removeSpore_JRadioButton.setToolTipText(
            "<html>\nSpore  is only removed if the missing vaue gene is \n<br/>present in the gene order under computation.\n</html>");
        removeSpore_JRadioButton.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
        removeSpore_JRadioButton.setMargin(new java.awt.Insets(0, 0, 0, 0));
        imputing_JRadioButton.setSelected(true);
        imputing_JRadioButton.setText(
            "Apply following strategies for imputation on the Missing Values");
        imputing_JRadioButton.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
        imputing_JRadioButton.setMargin(new java.awt.Insets(0, 0, 0, 0));
        imputationOptions_JPanel1.setBorder(
            javax.swing.BorderFactory.createTitledBorder("Imputation Strategies"));
        imputePolicyProb_JRadioButton.setSelected(true);
        imputePolicyProb_JRadioButton.setText("Apply probability for 0<->1 case with prob: ");
        imputePolicyProb_JRadioButton.setToolTipText(
            "<html>\n0<->0 means the missing value gene on both sides has 0.<br>\nIf both side values are the same then that value is used for imputation.<br>\nWhen we have opposing values 0<->1 , 0 is chosen with the specified prob<br>\nor else 1 gets chosen.\n</html>");
        imputePolicyProb_JRadioButton.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0,
                0, 0));
        imputePolicyProb_JRadioButton.setMargin(new java.awt.Insets(0, 0, 0, 0));
        imputeProb_JTextField.setText("0.5");

        javax.swing.GroupLayout imputationOptions_JPanel1Layout =
            new javax.swing.GroupLayout(imputationOptions_JPanel1);

        imputationOptions_JPanel1.setLayout(imputationOptions_JPanel1Layout);
        imputationOptions_JPanel1Layout.setHorizontalGroup(
            imputationOptions_JPanel1Layout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                imputationOptions_JPanel1Layout.createSequentialGroup().addComponent(
                    imputePolicyProb_JRadioButton).addPreferredGap(
                    javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(
                    imputeProb_JTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 35,
                    javax.swing.GroupLayout.PREFERRED_SIZE).addContainerGap(131, Short.MAX_VALUE)));
        imputationOptions_JPanel1Layout.setVerticalGroup(
            imputationOptions_JPanel1Layout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                imputationOptions_JPanel1Layout.createSequentialGroup().addGroup(
                    imputationOptions_JPanel1Layout.createParallelGroup(
                        javax.swing.GroupLayout.Alignment.BASELINE).addComponent(
                        imputePolicyProb_JRadioButton).addComponent(
                        imputeProb_JTextField, javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE)).addContainerGap(
                            127, Short.MAX_VALUE)));

        javax.swing.GroupLayout missingVal_JPanel1Layout =
            new javax.swing.GroupLayout(missingVal_JPanel1);

        missingVal_JPanel1.setLayout(missingVal_JPanel1Layout);
        missingVal_JPanel1Layout.setHorizontalGroup(
            missingVal_JPanel1Layout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                missingVal_JPanel1Layout.createSequentialGroup().addContainerGap().addGroup(
                    missingVal_JPanel1Layout.createParallelGroup(
                        javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                        missingVal_JPanel1Layout.createParallelGroup(
                            javax.swing.GroupLayout.Alignment.TRAILING, false).addComponent(
                            removeSpore_JRadioButton,
                            javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                                imputing_JRadioButton, javax.swing.GroupLayout.Alignment.LEADING,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE)).addComponent(
                                    imputationOptions_JPanel1,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    Short.MAX_VALUE)).addContainerGap()));
        missingVal_JPanel1Layout.setVerticalGroup(
            missingVal_JPanel1Layout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                missingVal_JPanel1Layout.createSequentialGroup().addContainerGap().addComponent(
                    removeSpore_JRadioButton).addPreferredGap(
                    javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(
                    imputing_JRadioButton).addPreferredGap(
                    javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(
                    imputationOptions_JPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addContainerGap()));

        javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);

        jPanel2.setLayout(jPanel2Layout);
        jPanel2Layout
            .setHorizontalGroup(jPanel2Layout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel2Layout.createSequentialGroup().addGap(10, 10, 10)
                    .addGroup(jPanel2Layout
                        .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(jLabel1).addComponent(jLabel2)).addGap(17, 17, 17)
                            .addGroup(jPanel2Layout
                                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(g_convEpsilon_JTextField,
                                    javax.swing.GroupLayout.PREFERRED_SIZE, 66,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addComponent(g_iteration_JTextField,
                                            javax.swing.GroupLayout.PREFERRED_SIZE, 39,
                                                javax.swing.GroupLayout.PREFERRED_SIZE))
                                                    .addContainerGap())
                                                        .addGroup(jPanel2Layout
                                                            .createSequentialGroup()
                                                                .addContainerGap()
                                                                    .addComponent(missingVal_JPanel1,
                                                                        javax.swing.GroupLayout
                                                                            .DEFAULT_SIZE, javax
                                                                                .swing.GroupLayout
                                                                                    .DEFAULT_SIZE, Short
                                                                                        .MAX_VALUE)
                                                                                            .addGap(55,
                                                                                                55,
                                                                                                55)));
        jPanel2Layout
            .setVerticalGroup(jPanel2Layout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel2Layout.createSequentialGroup().addContainerGap()
                    .addGroup(jPanel2Layout
                        .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(jLabel1)
                        .addComponent(g_iteration_JTextField, javax.swing.GroupLayout
                            .PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing
                            .GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(jPanel2Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel2)
                                    .addComponent(g_convEpsilon_JTextField, javax.swing.GroupLayout
                                        .PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax
                                        .swing.GroupLayout.PREFERRED_SIZE))
                                            .addPreferredGap(javax.swing.LayoutStyle
                                                .ComponentPlacement.RELATED)
                                                    .addComponent(missingVal_JPanel1, javax.swing
                                                        .GroupLayout.PREFERRED_SIZE, javax.swing
                                                            .GroupLayout.DEFAULT_SIZE, javax.swing
                                                                .GroupLayout.PREFERRED_SIZE)
                                                                    .addContainerGap(javax.swing
                                                                        .GroupLayout
                                                                            .DEFAULT_SIZE, Short
                                                                                .MAX_VALUE)));

        javax.swing.GroupLayout gHood_JPanelLayout = new javax.swing.GroupLayout(gHood_JPanel);

        gHood_JPanel.setLayout(gHood_JPanelLayout);
        gHood_JPanelLayout.setHorizontalGroup(
            gHood_JPanelLayout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                gHood_JPanelLayout.createSequentialGroup().addContainerGap().addComponent(
                    jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE,
                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addContainerGap()));
        gHood_JPanelLayout.setVerticalGroup(
            gHood_JPanelLayout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                gHood_JPanelLayout.createSequentialGroup().addContainerGap().addComponent(
                    jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE,
                    javax.swing.GroupLayout.DEFAULT_SIZE,
                    javax.swing.GroupLayout.PREFERRED_SIZE).addContainerGap(164, Short.MAX_VALUE)));
        jTabbedPane2.addTab("GHood Settings", gHood_JPanel);

        javax.swing.GroupLayout pHood_JPanelLayout = new javax.swing.GroupLayout(pHood_JPanel);

        pHood_JPanel.setLayout(pHood_JPanelLayout);
        pHood_JPanelLayout.setHorizontalGroup(
            pHood_JPanelLayout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 554, Short.MAX_VALUE));
        pHood_JPanelLayout.setVerticalGroup(
            pHood_JPanelLayout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 550, Short.MAX_VALUE));
        jTabbedPane2.addTab("PHood Settings", pHood_JPanel);
        jPanel5.setBorder(javax.swing.BorderFactory.createTitledBorder("LHood Settings"));
        jLabel5.setText("Iteration Limit");
        j_iteration_JTextField.setText("1");
        jLabel6.setText("Convergence EPSILON");
        j_convEpsilon_JTextField.setText("0.0001");
        missingVal_JPanel3.setBorder(
            javax.swing.BorderFactory.createTitledBorder("Missing Value Options"));
        removeSpore_JRadioButton2.setText("Remove Spores with Missing Values");
        removeSpore_JRadioButton2.setToolTipText(
            "<html>\nSpore  is only removed if the missing vaue gene is \n<br/>present in the gene order under computation.\n</html>");
        removeSpore_JRadioButton2.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0,
                0));
        removeSpore_JRadioButton2.setMargin(new java.awt.Insets(0, 0, 0, 0));
        imputing_JRadioButton2.setSelected(true);
        imputing_JRadioButton2.setText(
            "Apply following strategies for imputation on the Missing Values");
        imputing_JRadioButton2.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
        imputing_JRadioButton2.setMargin(new java.awt.Insets(0, 0, 0, 0));
        imputationOptions_JPanel3.setBorder(
            javax.swing.BorderFactory.createTitledBorder("Imputation Strategies"));
        imputePolicyProb_JRadioButton2.setSelected(true);
        imputePolicyProb_JRadioButton2.setText("Apply probability for 0<->1 case with prob: ");
        imputePolicyProb_JRadioButton2.setToolTipText(
            "<html>\n0<->0 means the missing value gene on both sides has 0.<br>\nIf both side values are the same then that value is used for imputation.<br>\nWhen we have opposing values 0<->1 , 0 is chosen with the specified prob<br>\nor else 1 gets chosen.\n</html>");
        imputePolicyProb_JRadioButton2.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0,
                0, 0));
        imputePolicyProb_JRadioButton2.setMargin(new java.awt.Insets(0, 0, 0, 0));
        imputeProb_JTextField2.setText("0.5");

        javax.swing.GroupLayout imputationOptions_JPanel3Layout =
            new javax.swing.GroupLayout(imputationOptions_JPanel3);

        imputationOptions_JPanel3.setLayout(imputationOptions_JPanel3Layout);
        imputationOptions_JPanel3Layout.setHorizontalGroup(
            imputationOptions_JPanel3Layout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                imputationOptions_JPanel3Layout.createSequentialGroup().addComponent(
                    imputePolicyProb_JRadioButton2).addPreferredGap(
                    javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(
                    imputeProb_JTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, 35,
                    javax.swing.GroupLayout.PREFERRED_SIZE).addContainerGap(131, Short.MAX_VALUE)));
        imputationOptions_JPanel3Layout.setVerticalGroup(
            imputationOptions_JPanel3Layout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                imputationOptions_JPanel3Layout.createSequentialGroup().addGroup(
                    imputationOptions_JPanel3Layout.createParallelGroup(
                        javax.swing.GroupLayout.Alignment.BASELINE).addComponent(
                        imputePolicyProb_JRadioButton2).addComponent(
                        imputeProb_JTextField2, javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE)).addContainerGap(
                            127, Short.MAX_VALUE)));

        javax.swing.GroupLayout missingVal_JPanel3Layout =
            new javax.swing.GroupLayout(missingVal_JPanel3);

        missingVal_JPanel3.setLayout(missingVal_JPanel3Layout);
        missingVal_JPanel3Layout.setHorizontalGroup(
            missingVal_JPanel3Layout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                missingVal_JPanel3Layout.createSequentialGroup().addContainerGap().addGroup(
                    missingVal_JPanel3Layout.createParallelGroup(
                        javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                        missingVal_JPanel3Layout.createParallelGroup(
                            javax.swing.GroupLayout.Alignment.TRAILING, false).addComponent(
                            removeSpore_JRadioButton2,
                            javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                                imputing_JRadioButton2, javax.swing.GroupLayout.Alignment.LEADING,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE)).addComponent(
                                    imputationOptions_JPanel3,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    Short.MAX_VALUE)).addContainerGap()));
        missingVal_JPanel3Layout.setVerticalGroup(
            missingVal_JPanel3Layout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                missingVal_JPanel3Layout.createSequentialGroup().addContainerGap().addComponent(
                    removeSpore_JRadioButton2).addPreferredGap(
                    javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(
                    imputing_JRadioButton2).addPreferredGap(
                    javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(
                    imputationOptions_JPanel3, javax.swing.GroupLayout.DEFAULT_SIZE,
                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addContainerGap()));

        javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5);

        jPanel5.setLayout(jPanel5Layout);
        jPanel5Layout
            .setHorizontalGroup(jPanel5Layout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel5Layout.createSequentialGroup().addGap(10, 10, 10)
                    .addGroup(jPanel5Layout
                        .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(jLabel5).addComponent(jLabel6)).addGap(17, 17, 17)
                            .addGroup(jPanel5Layout
                                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(j_convEpsilon_JTextField,
                                    javax.swing.GroupLayout.PREFERRED_SIZE, 66,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addComponent(j_iteration_JTextField,
                                            javax.swing.GroupLayout.PREFERRED_SIZE, 39,
                                                javax.swing.GroupLayout.PREFERRED_SIZE))
                                                    .addContainerGap())
                                                        .addGroup(jPanel5Layout
                                                            .createSequentialGroup()
                                                                .addContainerGap()
                                                                    .addComponent(missingVal_JPanel3,
                                                                        javax.swing.GroupLayout
                                                                            .DEFAULT_SIZE, javax
                                                                                .swing.GroupLayout
                                                                                    .DEFAULT_SIZE, Short
                                                                                        .MAX_VALUE)
                                                                                            .addGap(55,
                                                                                                55,
                                                                                                55)));
        jPanel5Layout
            .setVerticalGroup(jPanel5Layout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel5Layout.createSequentialGroup().addContainerGap()
                    .addGroup(jPanel5Layout
                        .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(jLabel5)
                        .addComponent(j_iteration_JTextField, javax.swing.GroupLayout
                            .PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing
                            .GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(jPanel5Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel6)
                                    .addComponent(j_convEpsilon_JTextField, javax.swing.GroupLayout
                                        .PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax
                                        .swing.GroupLayout.PREFERRED_SIZE))
                                            .addPreferredGap(javax.swing.LayoutStyle
                                                .ComponentPlacement.RELATED)
                                                    .addComponent(missingVal_JPanel3, javax.swing
                                                        .GroupLayout.PREFERRED_SIZE, javax.swing
                                                            .GroupLayout.DEFAULT_SIZE, javax.swing
                                                                .GroupLayout.PREFERRED_SIZE)
                                                                    .addContainerGap(javax.swing
                                                                        .GroupLayout
                                                                            .DEFAULT_SIZE, Short
                                                                                .MAX_VALUE)));

        javax.swing.GroupLayout jHood_JPanelLayout = new javax.swing.GroupLayout(jHood_JPanel);

        jHood_JPanel.setLayout(jHood_JPanelLayout);
        jHood_JPanelLayout.setHorizontalGroup(
            jHood_JPanelLayout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                jHood_JPanelLayout.createSequentialGroup().addContainerGap().addComponent(
                    jPanel5, javax.swing.GroupLayout.DEFAULT_SIZE,
                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addContainerGap()));
        jHood_JPanelLayout.setVerticalGroup(
            jHood_JPanelLayout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                jHood_JPanelLayout.createSequentialGroup().addContainerGap().addComponent(
                    jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE,
                    javax.swing.GroupLayout.DEFAULT_SIZE,
                    javax.swing.GroupLayout.PREFERRED_SIZE).addContainerGap(164, Short.MAX_VALUE)));
        jTabbedPane2.addTab("JHood Settings", jHood_JPanel);
        jTabbedPane1.addTab("Anneal Options", jTabbedPane2);

        javax.swing.GroupLayout general_JPanelLayout = new javax.swing.GroupLayout(general_JPanel);

        general_JPanel.setLayout(general_JPanelLayout);
        general_JPanelLayout.setHorizontalGroup(
            general_JPanelLayout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                jTabbedPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 564, Short.MAX_VALUE));
        general_JPanelLayout.setVerticalGroup(
            general_JPanelLayout.createParallelGroup(
                javax.swing.GroupLayout.Alignment.LEADING).addComponent(jTabbedPane1));

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());

        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                general_JPanel, javax.swing.GroupLayout.Alignment.TRAILING,
                javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                Short.MAX_VALUE));
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                general_JPanel, javax.swing.GroupLayout.DEFAULT_SIZE,
                javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE));
        pack();

    }    // </editor-fold>//GEN-END:initComponents

    /**
     * Method description
     *
     * @param evt description
     */
    private void formWindowClosing(java.awt.event.WindowEvent evt) {    // GEN-FIRST:event_formWindowClosing
        this.dispose();
    }    // GEN-LAST:event_formWindowClosing

    public void setOptions(ProgCurveIModel inputModel) {


        // progress curve own options
        // set the anneal options
        setOptions(inputModel.getAnnealInputOptions());
    }

    public void getOptions(ProgCurveIModel inputModel) {


        // progress curve own options
        // get the anneal options
        getOptions(inputModel.getAnnealInputOptions());
    }

    void setOptions(AnnealIModel inputModel) {

        g_iteration_JTextField.setText("" + inputModel.getGIterationLimit());
        g_convEpsilon_JTextField.setText("" + inputModel.getGConvgEpsilon());

        RFLPImputation rflpImputation = inputModel.getRflpImputation();
        int policyIndex               = rflpImputation.getPolicyIndex();

        if (policyIndex == RFLPImputation.POLICY_REMOVE) {

            removeSpore_JRadioButton.setSelected(true);
            imputing_JRadioButton.setSelected(false);
            imputePolicyProb_JRadioButton.setSelected(false);
        }

        if (policyIndex == RFLPImputation.POLICY_PROB) {

            removeSpore_JRadioButton.setSelected(false);
            imputing_JRadioButton.setSelected(true);
            imputePolicyProb_JRadioButton.setSelected(true);
            imputeProb_JTextField.setText("" + rflpImputation.getImputationProb());
        }

        master_iter_JTextField.setText("" + inputModel.getMASTER_ITER_COUNT());
        temp_friction_JTextField.setText("" + inputModel.getTEMP_FRICTION());
        start_temp_JTextField.setText("" + inputModel.getSTART_TEMP());
        max_unbeaten_JTextField.setText("" + inputModel.getMAX_UNBEATEN_COUNT());
        max_beaten_JTextField.setText("" + inputModel.getMAX_BEATEN_COUNT());
        lHood_percent_JTextField.setText("" + inputModel.getPercent());
    }

    void getOptions(AnnealIModel inputModel) {

        inputModel.setGIterationLimit(Integer.parseInt(g_iteration_JTextField.getText()));
        inputModel.setGConvgEpsilon(Double.parseDouble(g_convEpsilon_JTextField.getText()));

        RFLPImputation rflpImputation = new RFLPImputation();

        if (imputing_JRadioButton.isSelected()) {

            rflpImputation.setPolicyIndex(RFLPImputation.POLICY_PROB);
            rflpImputation.setImputationProb(Double.parseDouble(imputeProb_JTextField.getText()));
        }

        inputModel.setRflpImputation(rflpImputation);
        inputModel.setMASTER_ITER_COUNT(Integer.parseInt(master_iter_JTextField.getText()));
        inputModel.setTEMP_FRICTION(Double.parseDouble(temp_friction_JTextField.getText()));
        inputModel.setTEMP_ITER_COUNT(Integer.parseInt(temp_iter_JTextField.getText()));
        inputModel.setSTART_TEMP(Double.parseDouble(start_temp_JTextField.getText()));
        inputModel.setMAX_UNBEATEN_COUNT(Integer.parseInt(max_unbeaten_JTextField.getText()));
        inputModel.setMAX_BEATEN_COUNT(Integer.parseInt(max_beaten_JTextField.getText()));
        inputModel.setPercent(Double.parseDouble(lHood_percent_JTextField.getText()));
    }


    // End of variables declaration//GEN-END:variables
}
